﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Runtime.InteropServices;

/*
*   0x0410 0000 to 0x0410 0003  DPC_START_REG
    0x0410 0004 to 0x0410 0007  DPC_END_REG
    0x0410 0008 to 0x0410 000B  DPC_CURRENT_REG
    0x0410 000C to 0x0410 000F  DPC_STATUS_REG
    0x0410 0010 to 0x0410 0013  DPC_CLOCK_REG
    0x0410 0014 to 0x0410 0017  DPC_BUFBUSY_REG
    0x0410 0018 to 0x0410 001B  DPC_PIPEBUSY_REG
    0x0410 001C to 0x0410 001F  DPC_TMEM_REG
    0x0410 0020 to 0x041F FFFF  Unused*/

namespace Super64.Core.Memory.Ram.Registers
{
    [StructLayout(LayoutKind.Sequential, Pack = 4)]
    public unsafe struct DPCommandRegisters
    {
        public uint Start;
        public uint End;
        public uint Current;
        public uint Clock;
        public uint BufferBusyStatus;
        public uint PipeBusyStatus;
        public uint TMemoryReg;
        public fixed byte Unused[0xFFDF];
    }
}
